{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.text.Text at 0x7f543daa7588>"
      ]
     },
     "execution_count": 49,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f543dacb0b8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from pysolar.rest import *\n",
    "get_broadband_direct_normal_irradiance(45.0)\n",
    "altitude = np.linspace(0, 90, 90)\n",
    "#ma = np.array(map(get_optical_mass_aerosol, altitude))\n",
    "ma = np.array([get_optical_mass_aerosol(alt) for alt in altitude])\n",
    "plt.plot(altitude, ma)\n",
    "plt.xlabel(\"altitude [degrees]\")\n",
    "plt.ylabel(\"optical mass, aerosol [kg/m^2?]\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.text.Text at 0x7f543d8330f0>"
      ]
     },
     "execution_count": 59,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f543d8d25f8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "air_masses = np.linspace(1, 15, 15)\n",
    "eff_aero_wavelength = np.array([get_effective_aerosol_wavelength(\"high-frequency\", mass, 1.3, 0.6) for mass in air_masses])\n",
    "plt.plot(air_masses, eff_aero_wavelength)\n",
    "plt.xlabel(\"optical mass, aerosol [kg/m^2?]\")\n",
    "plt.ylabel(\"high freq. effective aerosol wavelength [um?]\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.text.Text at 0x7f543d91b9b0>"
      ]
     },
     "execution_count": 58,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYYAAAEPCAYAAABGP2P1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XeYXGX9/vH3ndBBOqi0UDRBCAGCUqQtRUmkSREiqAFpItKbUn6JCEjnCyglgAgCShMMRVDKAqElkIQ0CBDQCMQgPSGQ+vn98ZyF3WTL2c2eObO79+u65mLmzMyZO5uwz5ynfB5FBGZmZnW6lR3AzMyqixsGMzNrwA2DmZk14IbBzMwacMNgZmYNuGEwM7MGCm0YJF0vaaqkMc28pkbSKEnjJD1WZB4zM2uZilzHIGkbYDpwU0T0aeT55YCnge9GxFuSVo6IdwsLZGZmLSr0iiEihgEfNPOSA4C7IuKt7PVuFMzMSlb2GENPYEVJj0kaIenHJecxM+vyFqmCz+8L7AgsDTwj6ZmIeK3cWGZmXVfZDcObwLsR8RnwmaQngI2BBRoGSS7qZGbWBhGh1ry+El1Jym6N+RuwjaTukpYCtgBeaupEEVH1t0GDBpWewTmds6NmdM72v7VFk1cMkj5u4b0CpkREz2bOcStQA6wkaTIwCFgMiIgYEhEvS3oIGAPMBYZExIRW/hnMzKwdNdeVNCkiNm3uzZJGNfd8RBzQUoCIuAi4qKXXmZlZZTTXlbRPjvfneU2XUlNTU3aEXJyzfXWEnB0hIzhnNWh2gZuk1YBZUQXrCyRFW/vLzMy6KklEew0+S/p/wDDgBUnnLWw4MzPrGJrrSjoA6JXdvirpIUknSvq6pB9VJp6ZmVVacw3DHNLsoc8iYiDwO2AJ0qyipSsRzszMKq/JMQZJRwCvRsSjlY3UOI8xmJm1XlvGGAqtrtqe3DCYmbVeWxqGFktiSPomcDrQI3u9SF1MC5TRNjOzji9PraRbgJOBscC8YuOYmVnZ8jQM/4uIoYUnMTOzqtDiGIOknYAfAo8AM+uOR8Rfi422QA6PMZiZtVIhYwzAwcD6wKJ80ZUUQEUbBjMzq4w8DcO3IqJX4UnMzKwq5NmP4WlJGxSexMzMqkKeMYaXgPWAN0hjDKVMV/UYg5lZ6xU1xtCvjXnMzKwDytMw+Gu6mVkXkqcraSypcRCpiN46wMSI2LD4eA1yuCvJzKyVCulKioiN5vuQvsDPW5nNzMw6iDyzkhqIiJHAFgVkMTOzKpCniN4J9R52A/oCbxeWyMzMSpVn8PlL9e7PAe4H7iomjpmZlc37MZiZdWJtGXxucoxB0uAcH9jia8zMrGNpbmvPN4FLmnsvcFhErF9EsEby+IrBzKyV2nu66rU0HF9o6jVmZraQ3noL3n8fNtqo5dcWrcmGISJ+XckgZmZd0TvvwHnnwR//CGefXR0NQ6vXMZiZ2cJ77z345S/hG9+AOXNg/Hj4eZUsHS60YZB0vaSpksY08fz2kj6UNDK7nVFkHjOzsn30EQwaBD17wgcfwOjRcPnl8NWvlp3sC0VfMdwA7NLCa56IiL7Z7eyC85iZlWL6dDj3XPja1+Df/4YRI+Caa2DNNctOtqA8K59XAQ4D1q7/+oj4aUvvjYhhknq09BEtncfMrKOaMQOuugouuAB23BGGDYNeVb4nZp6Vz38DngQeBuYWkGFLSaNIZTZOjogJBXyGmVlFzZwJ116brhK22goeeQR69y47VT55GoalIuLUgj7/BaBHRMyQ1B+4B+hZ0GeZmRVu9uw0w+g3v4E+feC++6Bv37JTtU6ehuE+Sd+LiAfa+8MjYnq9+3+XdKWkFSPi/cZeP3jw4M/v19TUUFNT096RzMzaZM4cuOUWOOssWHdduO22dKVQabW1tdTW1i7UOZpb+TyNLzboWZq03/NsvtjzedlcHyCtDdw7/74O2XNfjoip2f3NgdsjYu0mzuOVz2ZWdebNg9tvh8GDYdVV05XC9tuXneoL7bryOSJaWvWcJ9CtQA2wkqTJwCBgsXT6GALsK+lIUoPzKbD/wn6mmVklRMA996Spp0stBVdcATvvDOoE02nybO35SETs1NKxovmKwcyqQQQ8+CCceWa6WjjrLNh11+ptENr1ikHSEqQupJUlrcAX00qXBVZvc0ozsw7qySfhtNPSquWzzoK994ZunbB+RHODz0cAxwGrASPrHf8Y+F2RoczMqsmoUXD66fDSS2ks4Uc/gu7dy05VnDxdSUdHxBUVytNcDnclmVlFTZyYuoyGDUsNw6GHwuKLl52qddq77HadtyTtPd+xj4CxEfFOaz7MzKwjmDwZfv1rGDoUTjwRbrgBll667FSVk6dhOATYCngse1xDWpi2jqSzIuJPBWUzM6uod95JK5X/9Cc48kh49VVYfvmyU1VenmGTRYFvRMQ+EbEPsAFpfcMWQFEros3MKubDD+GMM1IJ7AiYMCHtjdAVGwXI1zCsUbcILfMOsGa2Onl2MbHMzIo3Ywacfz58/evw9tswciRcdhl8+ctlJytXnq6kWkn3AXdkj/fJji0NfFhYMjOzgsyalQrcnXMObLNNmoa6fkV2r+8Y8sxKEqkx2Do79BRwV6WnCHlWkpktrLlzUz2jQYNSQ3DOOR2vwF1rtWVWUosNQ7Vww2BmbVVXvuKMM2CFFdIA83bblZ2qMgqZrppNVT0fWJW0+rlVRfTMzMr0yCNpb+U5c+DCC6F//+otX1Et8nQlvQbsHhEvVSZSkzl8xWBmuY0cmRqEN95IM4x+8IPOWb6iJW25YsjzY5padqNgZpbXa6/BgAGw226w115p6un++3fNRqGt8sxKel7SbaTd1WbWHYyIvxaWysyslf7737QXwm23wXHHwXXXwTLLlJ2qY8rTMCwLzAC+W+9YAG4YzKx0H38MF10Ev/89DBwIL78MK69cdqqOrcWGISIOrkQQM7PWmDkTrroKfvtb6NcvjSn06FF2qs6hxV43ST0lPSJpXPa4j6Qzio9mZraguXNTLaNeveDhh9PtxhvdKLSnPLOSHgdOBq6JiE2zY+MioncF8tXP4VlJZl1YBPz972mm0TLLpFIW225bdqrqV1TZ7aUiYrgaTvyd06pkZmYL4dln4dRT4X//S11He+zhtQhFyjOB611J65EGnJG0LzCl0FRmZqQd0/beO61BGDgQxoyBPfd0o1C0PA3DUcA1wPqS3iJt93lkoanMrEt78820W9p228FWW8Err8BPfwqL5OnjsIWWZ1bS68DOWTXVbhExrfhYZtYVffABnHdeWoNw+OGpQVhhhbJTdT1NNgySTmjiOAARcUlBmcysi5k5M61DOO+81FU0ZgysvnrZqbqu5q4YvlSxFGbWJc2bl1Yqn3Ya9O4Njz0GG25Ydipz2W0zK0VtLZx8crp/4YVQU1Nmms6rkCJ6XuBmZu1pwgTYffc0mHziifDcc24Uqk2eWUnXAr8i2985IsYAA4oMZWadz5QpaUC5pgZ23DFNRR0wwFVPq1Gev5KlImL4fMe8wM3Mcpk2LW2l2bs3LL88TJwIxx8Piy9edjJrihe4mVkhZs+Gq6+Gnj3h9ddTkbsLLvD0044gz3KRo4AhfLHA7Q3gwDwnl3Q9sBtps58+zbzuW8DTwP7e58GsY4uAoUNTCYvVV4f774e+fctOZa2Rp4he94iY25YFbpK2AaYDNzXVMEjqBvwT+BT4Q1MNg2clmVW/555LM40++CBdHfTr5/IVZStqa883JA0BtiT9ks8tIoYBH7TwsqOBO4F3WnNuM6sekybBfvvBPvvAQQfB6NHQv78bhY4qT8OwPvAwqUvpDUm/y64EFpqk1YDvR8RVgP8JmXUw774Lxx4LW2wBm2zyRU2j7t3LTmYLI0+tpBnA7cDtklYALgMeB9rjr/7/gFPrPW62cRg8ePDn92tqaqjx5GezUnz2GVx+eeouGjAgrU1YddWyUxlAbW0ttbW1C3WOXCufJW0P7A/0A54HbouIu3J9gNQDuLexMQZJr9fdBVYGPgEOj4ihjbzWYwxmJYuAO+5IA8sbb5wahp49y05lzSlkox5J/wJGka4aTo6IT1qbiyauBCJi3XqfcwOpAVmgUTCz8j33XFp/8Omn8Ic/wA47lJ3IipJnumqfiPi4LSeXdCtQA6wkaTIwCFgMiIgYMt/LfTlgVoX+/W/41a/g8cfhnHPgxz/2GEJnl2e66hLAIcCGwBJ1xyPip8VGWyCHu5LMKujjj1MZ7GuugaOPTtNQl1667FTWWkVNV/0T8BVgF9Kg8xqAN+sx66TmzIEhQ6BXL3j77bQ3wuDBbhS6kjxXDKMiYlNJYyKij6RFgScjYsvKRPw8h68YzAr20EOp4unKK8PFF8Nmm5WdyBZWIYPPZFVVgQ8l9Qb+C3himlknMn48nHQSvPYaXHQR7LGHF6d1ZXm6koZk6xfOBIYCE4DzC01lZhXxzjtw5JFphlG/fqmB2HNPNwpdnXdwM+uCPvsMLrss7Zz24x/DmWfCiiuWncqKUNQ6hknAs8CTpLGF8W3MZ2Yli4Dbb4df/jKVsHj6aS9QswXlGXxeHNgC2BbYGugFjImIvYqP1yCHrxjMFsKzz6YFajNnwiWXeDvNrqKo6apzSQPQc4F5pCqoroRq1kH85z9w4IGw777ws5/B88+7UbDm5WkYPiYVu3sDGBgRW0XEEcXGMrOFNWMGnHVW6jJad114+WUYONB7LFvL8nQl7QlsA2wOzCLttPZERDxSfLwGOdyVZJZD3TjCKaekctgXXABrr112KitLW7qScs9KkrQ+0B84Dlg1IpZsfcS2c8Ng1rIXXoDjjoPp09Oso+22KzuRla2QMQZJd0l6jbQPw1LATwBv521WRf77XzjkENh1V/jJT9I4ghsFa6s8K59/C4yKiLlFhzGz1pk5M10ZXHBB2lJz4kRYbrmyU1lHl2cHt+crEcTM8ouAoUNTXaMNNoBnnoGvf73sVNZZ5LliMLMqMm5cGkeYMgWuvBK++92yE1ln44lrZh3Ee+/BL34BO+6Y6hmNHu1GwYrR5BWDpL7NvTEiRrZ/HDOb3+zZcNVVcPbZsN9+8NJLsNJKZaeyzqy5rqSLm3kugB3bOYuZzeehh1IZi9VXh0cfhd69y05kXYGrq5pVoVdeSQPLL7+cNszZfXeXwra2KWodw6KSjpF0Z3b7RbaLm5m1s2nT4NRT4dvfTusQxo3zpjlWeXkGn68CNgOuzG6bZcfMrJ1EwC23wDe+kRarjRsHJ58Miy9edjLrivJMV/1WRGxc7/Gjkl4sKpBZVzN6NBx9dCp6d/vt6WrBrEy5ym5LWq/ugaR1SSW4zWwhvP8+/PznsMsuaRe14cPdKFh1yNMwnAw8JqlW0uPAo8CJxcYy67zmzoWrr07dRt26pemnhx8O3buXncwsyTUrKdvFrVf2cGJEzCw0VeMZPCvJOrynn06L1JZZBq64AjbeuOX3mC2MomYl/QBYLCLGAHsAf25p8ZuZNTRlSqp6ut9+cNJJ8PjjbhSseuXpSjozIqZJ2gbYCbgez0oyy2XWLLjoIthoI1httdRtdMABnn5q1S3PrKS6geZdgWsj4n5JZxeYyaxT+Mc/4Jhj0raaTz8NPXuWncgsnzxXDG9JugbYH3ggG2/IVXxP0vWSpkoa08Tze0h6UdIoScMlbZ0/ull1+te/YO+94cgj4cIL4f773ShYx5LnF/x+wEPALhHxIbAiaaZSHjcAuzTz/MMRsXFEbAocAlyX87xmVefTT2HwYPjmN6FvXxg/3qUsrGPKs1HPDEmTgF0k7QI8GRH/yHPyiBgmqUdz5673cBlgXp7zmlWTCLj7bjjhBNh8cxg5EtZaq+xUZm3XYsMg6VjgMOCv2aGbJQ2JiCvaI4Ck75O2D12FNI5h1mFMnJhWLb/9NvzhD2mvBLOOLs/g8yHAFhHxCYCk84FngHZpGCLiHuCebNbT2cB3mnrt4MGDP79fU1NDTU1Ne0Qwa7UZM9L+CEOGwOmnp7UJi7q0pFWB2tpaamtrF+ocLS5wkzSWVC/ps+zxEsCIiNgo1wekrqR7I6JPjtdOyj7r/Uae8wI3K10E/O1vaWvNrbZKJbFXW63sVGZNa8sCtzxXDDcAz0m6O3v8fdJahty5stuCT0jrRcSk7H5f0kK6BRoFs2rw+uup2+j11+H662GnncpOZFaMPIPPl0iqBbbJDh0cEaPynFzSrUANsJKkycAgYLF02hgC7CPpJ8As4FPSDCizqvLZZ3DBBXD55WnV8t13w2KLlZ3KrDjNdiVJ6g6Mj4j1KxepySzuSrKKe/DBdJWw0Ubwf//n2UbW8bR7V1JEzJU0UdJaETF54eKZdRyTJ6e9ll98MRW769+/7ERmlZNngdsKwHhJj0gaWncrOphZGWbNgvPOSwvUNt447aTmRsG6mjyDz2cWnsKsCjz6KBx1VKpt9NxzsN56Lb/HrDPKux9DD+DrEfGwpKWA7hExrfB0DTN4jMEK8fbbcOKJ8MwzaRxhzz1dxsI6j6L2YzgMuBO4Jju0OnBP6+OZVZc5c1JD0KcPrLNOqm30/e+7UTDL05V0FLA58BxARLwqadVCU5kV7Kmn0n7Lq6wCw4bB+qXPuzOrHnkahpkRMUvZ1yhJiwDu07EO6Z134JRT4OGH06rl/fbzFYLZ/PLMSnpc0mnAkpK+A9wB3FtsLLP2NW9eqmvUuzestFLaSW3//d0omDUmT62kbqRCet8llbZ4CLiu0iPBHny2tho7Fo44It2/+uo0pmDWVbRl8DnXrKRq4IbBWuuTT+DXv4Y//jFVQj30UOiWa+9Bs86jqFlJX5d0p6QJkl6vu7U9plnx7rsPNtwQpkxJVwyHH+5GwSyvvNVVBwGXAjsAB5Nzz2ezSnvzTTjmmLRi2RVQzdomzy/4JSPiEVK3078jYjDeac2qzJw5cOmlsMkmaQxhzBg3CmZtlWu6ajYA/aqkXwBvkfZnNqsKw4enweUVV4Snn4aePctOZNax5ZmV9C3gJWB54DfAssCFEfFs8fEa5PDgszXw0Udw2mnw17/ChRfCgQd6+qnZ/ArZwS0iRmR3p5PGF8xKFQG33QYnnAC77w4TJsAKK5SdyqzzyNOVZFY1Jk1KpSymTIE774Rvf7vsRGadj2cXWYcwc2Zai7DFFrDzzvDCC24UzIriKwareo8/Dj/7GXzta6lB6NGj7ERmnVueBW49s93bxmWP+0g6o/ho1tW9+y4cdBD86Edw7rkwdKgbBbNKyNOVdC3wK2A2QESMAQYUGcq6tgi46aa0cnmFFdLg8l57ecaRWaXk6UpaKiKGq+H/lXMKymNd3GuvpW6j99+HBx6AzTYrO5FZ15PniuFdSeuR7cEgaV9gSqGprMuZPRvOOw+23BL690+L1twomJUj7w5uQ4D1Jb0FvAEcWGgq61KGD4fDDoOvfhVGjEjbbJpZefKsfO4eEXMlLQ10i4hplYm2QA6vfO5kpk2DM86A229Pu6n98IceRzBrb4WU3QbekDQE2JK0+tlsod17bxpcnjYtVUI94AA3CmbVIs8Vw1LAbqSZSH2B+4C/RMSw4uM1yOErhk5gypRUFnv0aLjmGthxx7ITmXVuhVwxRMSMiLg9IvYGNiUV0Xu8jRmti5o3LzUEffqk6qdjxrhRMKtWuVY+S9oe2B/oBzwP7JfzfdeTrjamRsQCO+1KOgA4NXs4DTgyIsbmObd1HC+9lHZQmz0bHn0UNtqo7ERm1pw8K5//BRwHPAlsFBH7RcRdOc9/A7BLM8+/DmwXERsDZ5MW01knMXMmDB4M224LAwbAU0+5UTDrCPJcMfSJiI/bcvKIGCapySIG8+3p8Cywels+x6rPk0+mq4SePdN4whprlJ3IzPJqsmGQdEpEXACcI2mBUd+IOKadsxwK/L2dz2kV9uGHcOqpcP/9cPnlLmVh1hE1d8XwUvbf54sOIWkH0iZA2zT3usGDB39+v6amhpqamkJzWX4RaX+E446DPfeE8eNhueXKTmXW9dTW1lJbW7tQ58gzXfUHEXFHS8eaeX8P4N7GBp+z5/sAdwH9ImJSM+fxdNUq9eabafOcSZNgyBDYeuuyE5lZnaIWuP0q57GmKLst+IS0FqlR+HFzjYJVp3nz4MorYZNNUl2jUaPcKJh1Bs2NMfQHvgesLunyek8tS87qqpJuBWqAlSRNBgYBiwEREUOAM4EVgSuVyrfOjojN2/IHscp6+eVU32juXHjiCdhgg7ITmVl7abIrSdLGwCbAWcD/q/fUNOCxiPig+HgN8rgrqQrMng0XXACXXgqDBqUupO7dy05lZk1pS1dSnjGGZYFPImJu9rg7sHhEzGhz0jZww1C+ESPgkEPS1NOrr4a11io7kZm1pKgxhn8AS9Z7vCTwcGs+xDq2Tz6BE0+E3Xf/YiqqGwWzzitPw7BERHxeVTW7v1RxkayaPPxwWq08dSqMHQsHHuh1CWadXZ6Vz59I6hsRIwEkbQZ8WmwsK9v778NJJ8Ejj8BVV8H3vld2IjOrlDwNw3HAHZLeJk07/QqpoJ51QnUL1Y49FvbdN+2V8KUvlZ3KzCqpxcFnAEmLAr2yhxMjYnahqRrP4MHngr31Fhx1FLzyClx3HXz722UnMrOFVcjgc7ZRz6nAsRExDlhb0m5tzGhVqG6vhE02gY03TgvV3CiYdV15upJuAF4AtsoevwXcQdrJzTq4V15JVVA/+wweewx69y47kZmVLc+spPWyKquzIe3oRhMlLqzjmD0bzjsvXRnstVfaK8GNgplBviuGWZKWBAJA0nrAzEJTWaFGjkwL1VZdFZ5/HtZeu+xEZlZN8lwxDAIeBNaUdAvwCHBKoamsEJ9+mhao9e8Pxx8PDz7oRsHMFtRcraStI+IpSYsDywBbkrqQno2IdyuYsS6PZyUthNraVPRus83SBjqrrlp2IjOrhHatlSTphYjYTNLIiOjbLgkXghuGtvnoIzjlFHjgAfj972GPPcpOZGaV1JaGobkxhtmShgBrzFd2Gyhka09rZ0OHpuqnu+2WFqp5RzUzy6O5hmE3YGdgF9J0Vesgpk6FY45Jg8y33ALbb192IjPrSJprGE6OiFMlrRURN1YskbVZBPzpT3DyyXDwwfDHP8KSS7b4NjOzBpobYxgL9AFe8BhD9fvXv+CII+Cdd+D666Fv6X9jZlYN2rskxoPAB0AfSR9Lmlb/vwuV1NrN3LlpltG3vgU77ADDh7tRMLOFk2cHt79FxJ4VytNcDl8xzGfChLRQbdFF4dproVevlt9jZl1LIUX0ImJPST0k7Zx9yJKSXIi5RLNmwVlnpUHlgQPTGgU3CmbWXlosiSHpMOBwYEVgPWAN4Gpgp2KjWWOGD09XCWuvnaqgrrFG2YnMrLPJUxLjKGBr4GOAiHgV8LrZCvvkEzjhhLRA7fTT0xoFNwpmVoQ8DcPMiJhV90DSImQF9awy6vZd/t//0kK1AQO877KZFSdPddXHJZ0GLCnpO8DPgXuLjWUA772X9l1+9FG4+upU/M7MrGh5rhh+CfwPGAscATwAnFFkqK6ubqHahhumMhbjxrlRMLPKybXnczXoKtNVX3sNjjwS3n03TUH95jfLTmRmHVkh01WtMmbNgnPPhS23hF12gREj3CiYWTnyjDFYwZ55Ju27vOaa3lHNzMpX6BWDpOslTZU0ponne0l6WtJnkk4oMks1+uijVBZ7n33gjDPg/vvdKJhZ+drUMEg6POdLbyCV7W7Ke8DRwIVtydFRRcCdd6bB5blzYfx42H9/T0E1s+rQ1q6kXL/CImKYpB7NPP8u8K6k3dqYo8OZPBmOOgomTYK//AW22absRGZmDbXpiiEirmnvIJ3dnDlw6aWp8unmm6dyFm4UzKwa5amV1Gzff0Rc0n5xOqeRI+Gww9KahKefhp49y05kZta0PF1J3wS+BQzNHu8ODAdeLSpUUwYPHvz5/ZqaGmpqaiodoVWmT4dBg+Dmm+H881MlVI8jmFmRamtrqa2tXahz5NmP4Qlg14iYlj3+EnB/RGyX6wOktYF7I2KjZl4zCJgeERc385oOtcDt/vvTWMJ228HFF8Mqq5SdyMy6orYscMtzxfBlYFa9x7OyY3kC3QrUACtJmgwMAhYDIiKGSPoy8DzwJWCepGOBDSJiev4/QnWZMgWOPTZ1H113Hey8c9mJzMxaJ0/DcBMwXNLd2ePvAzfmOXlEHNDC81OBNfOcq9rNnp0K3Z11VlqsduONsOSSZacyM2u9XLWSJPUFts0ePhERowpN1XiGquxKikjdRiedBGutBZdcAr17l53KzCwpqisJYCng44i4QdIqktaJiDdaH7FzefFFOPFEePvtNBW1Xz8PLptZx9fiOoZsYPhU4FfZoUWBm4sMVe2mTIFDD03F7vbZB8aMSWWx3SiYWWeQZ4HbXsAewCcAEfE2abC4y5kxA84+O+2mttJKMHFiKpG9iEsRmlknkudX2qyICEkBIGnpgjNVnXnz4NZb4bTTYKutUknsddYpO5WZWTHyNAy3S7oGWF7SYcBPgWuLjVU9nnwSTjghdRP9+c+w9dZlJzIzK1beWUnfAb5LKp73UET8s+hgjWSo6KykSZPg1FPT1cFvfwsDBkA3b2tkZh1MW2YlNdswSOoOPBwROyxsuIVVqYbhww/hnHPghhvSlcLxx3s9gpl1XO2+tWdEzCWtSF5uoZJ1ALNnw+9/D716pQ10xo1LYwpuFMysq8kzxjAdGCvpn2QzkwAi4pjCUlVQBDzwQFqgtsYa8M9/Qp8+ZacyMytPnobhr9mt0xkzJi1Qe/PNVOjOaxHMzJppGCQ9EhE7kYranVrBTBVx993ws5+lstiHHQaLLlp2IjOz6tDk4LOkCcChwPXAAcy3nWdEjCw8XcM87Tr4PH162lVt+eXb7ZRmZlWnXWclSdoXOATYhlQau76IiB3blLKNqrWInplZNWv36arZSc+MiN8sVLJ24IbBzKz1CmkYqoUbBjOz1mv3dQxmZtb1uGEwM7MG8uzH8BtJ3+mKVVXNzLqiPFcMrwM/BJ6XNFzSxZL2LDiXmZmVJPfgs6SvAPsBJwErRERFN+vx4LOZWesVNV27tVStAAAMYklEQVT1OmADYCrwJDAMGBkRc9oatC3cMJiZtV5Rs5JWAroDHwLvA+9WulEwM7PKaU1X0jeAXYDjge4RsUaRwRr5fF8xmJm1UluuGFqsrippN2BbYDtgeeBRUpeSmZl1QnnKbvcjNQSXRcTbBecxM7OS5d3z+cvAt7KHwyPinUJTNZ7BXUlmZq1UyOCzpB8Aw4EfkKarPpdVXjUzs04oz3TVF4Hv1F0lSFoFeDgiNm7x5NL1wG7A1IhodMNMSZcD/Unbhh4UEaObeJ2vGMzMWqmo6ard5us6ei/n+wBuIM1kapSk/sB6EfF14Ajg6pznrVq1tbVlR8jFOdtXR8jZETKCc1aDPL/gH5T0kKSDJB0E3A88kOfkETEM+KCZl+wJ3JS99jlguWw8o8PqKP9YnLN9dYScHSEjOGc1aHFWUkScLGkfYOvs0JCIuLudPn914D/1Hr+VHZvaTuc3M7NWyjNdlYi4C7ir4CxmZlYFmtvzeRrQ2JMi7fm8bK4PkHoA9zY2+CzpauCxiLgte/wysH1ELHDFIMkjz2ZmbdBuK5/bsXqqsltjhgJHAbdJ2hL4sLFGIcvTqj+YmZm1Ta6upLaSdCtQA6wkaTIwCFiMdMUxJCIekPQ9Sa+RpqseXGQeMzNrWe4iemZm1jV0iD2fJfWT9LKkVySdWnaexkhaQ9KjksZLGivpmLIzNUVSN0kjJQ0tO0tTJC0n6Q5JL2U/0y3KztQYScdLGidpjKRbJC1WdiZIi0slTZU0pt6xFST9Q9LEbAr6cmVmzDI1lvOC7O99tKS7JOUazyxSYznrPXeipHmSViwj23xZGs0p6ejsZzpW0nktnafqGwZJ3YDfkRbKbQj8UNL65aZq1BzghIjYENgKOKpKcwIcC0woO0QLLgMeiIhvABsDL5WcZwGSVgOOBvpmkysWAQaUm+pzjS0u/SWpakEvUpXkX1U81YIay/kPYMOI2AR4lerNiaQ1gO8A/654osYtkFNSDbA7sFFEbARc1NJJqr5hADYHXo2If0fEbOAvpIVxVSUi/ltXziMippN+ka1ebqoFZf+QvwdcV3aWpmTfELeNiBsAImJORHxccqymdAeWlrQIsBRQFRWIm1hcuidwY3b/RuD7FQ3ViMZyRsTDETEve/gsUNG9XxrTzGLdS4GTKxynSU3kPBI4r26DtYh4t6XzdISGYf5FcG9Shb9w65O0NrAJ8Fy5SRpV9w+5mgeX1gHelXRD1uU1RNKSZYeaX1aG/mJgMmlx5ocR8XC5qZq1at2sv4j4L7BqyXny+Cnw97JDNEbSHsB/ImJs2Vla0BPYTtKzkh6T9M2W3tARGoYORdIywJ3AsdmVQ9WQtCupoOFomp9GXLZFgL7A7yOiLzCD1A1SVSQtT/oW3gNYDVhG0gHlpmqVav5ygKTTgdkRcWvZWeaXfVE5jTTT8vPDJcVpySLAChGxJXAKcHtLb+gIDcNbwFr1Hq+RHas6WXfCncCfIuJvZedpxNbAHpJeB/4M7CDpppIzNeZN0jex57PHd5IaimqzM/B6RLwfEXOBvwLfLjlTc6bW1SKT9BWg4vuq5JXVZfseUK0N7XrA2sCLkt4g/V56QVI1XoX9h/Rvk4gYAcyTtFJzb+gIDcMI4GuSemQzPgaQFsZVoz8AEyLisrKDNCYiTouItSJiXdLP8dGI+EnZueaXdXf8R1LP7NBOVOdg+WRgS0lLSBIpZzUNks9/VTgUOCi7PxColi8vDXJK6kfq7twjImaWlmpBn+eMiHER8ZWIWDci1iF9mdm0jE3MGjH/3/s9wI4A2f9Ti0bEe82doOobhuyb2C9IMxXGA3+JiGr6nw8ASVsDBwI7ShqV9Y33KztXB3YMcIuk0aRZSeeWnGcBETGcdDUzCniR9D/jkFJDZbLFpU8DPSVNlnQwcB7wHUkTSY1Yi9MWi9ZEziuAZYB/Zv8fXVlqSJrMWV9QBV1JTeT8A7CupLHArUCLXwa9wM3MzBqo+isGMzOrLDcMZmbWgBsGMzNrwA2DmZk14IbBzMwacMNgZmYNuGGwNpF0rKQl6j2+ry3lkSUNlHRF+6brPCRtL+neRo4PlPSOpCH1Hrf65yjpgaxKbGves7SkEZJek/TV+Z67WalE/hhJ10nqnh0/IitP/rKk/5cdWzdb81OtBRK7LDcM1lbHkaqJAhARuy1EBdROt5im7hdiO2nq5/OXiDg8x+salTXsK2bFAPO+pzup1s6NpNXJ90iqvw3wzRGxflaGfCng0Oz4q6TCkhsBB0laLSJej4hNW5PZKsMNgwEg6YRsE48xko7NjvXINve4WdIESbdLWlLS0aSicY9JeiR77Rt1G5VI+omkF7Nvgzdmx3bLqju+oLRZzCot5Bkk6Y+SnsjOvZek87N8D9T7JnqmpOey41fXe/8xShv8jM5Wg9Z9+65blf6CpKVbyHClpOHZz2VQveN9JdVm35r/Xq/+0GOSLpU0HDgm+/k9kmX4p1LJcyT9IDvnKEm12bHFJf0h+3O8oFRDv00k7SrpKUkrZt/Kn8n+Pn4jaVq9l9YAdZ//hqRzs0zDJW0q6UFJr0o6ot57riHtk/G7iLgbOAf4c93fR0Q8WO+1w8lKZkfEo1nZ5+7ZbVZb/3xWARHhWxe/kQrUvQgsASwNjCOVoegBzAO2zF53PWkzIoA3SBUb687xOrAisAHwct1zwPLZf5er99pDgIuy+wOByxvJNAh4gvTlpQ9pT/DvZs/9lVRH5/PzZ/dvAnbN7r9FqgkDsGz236HAVtn9pYBuLfxc6rJ3Ax4DepMqVT4FrJQ9tx9wfXb/MeB39d4/FPhRdv9g4O7s/hjgq/NlOwG4Lrvfi7Txy2LA9sDQRrI1+LnVPSbtsfB4vfPeC+yX3T8C+Ljeey4Daur9fR6e3b8EGJ39jFYG/tuGf1OLAC8AW893/EbS3gD1j33c2vP7VuzNVwwGsA3pl9ZnEfEJ6RfvttlzkyPi2ez+zdlr6zRWG2ZH4I6I+AAgIj7Mjq+ptJ3kGOAkUgPSkr9H2rBlLOmX+D+y42NJlS0BdsquRMYAO5B2+YPU0N0q6UBgbnbsKeDS7IpnhfhiM5imDJD0AqkW0gbZrRepgfinpFHA6aSrpzq31bu/FamKLcCfSNVt63LcKOlQ0i9QSD/XmwEiYiLwL1Id/dbYiVRWedf4oltvK1I9J0h1curbGhhW73HdWMZY4LmImBFpU5fP1PrxoyuBxyPiqboDknYHvhIRVVdC3Rpyw2Ctlacfu7EG4wrSN9w+wM9IVyctmQkQ6Wvl7HrH5wGLSFoc+D2wd3be6+qdd1fSlrB9gRGSukXE+aSrlSWBp/RF9dYF/wBps6UTgR0iYmPggezcAsZFRN+I2DQiNo6I/vXe+km9+43+rCLiSFKDsiapVHNjewW3pSDbJOBLpMarsQz1K5iuQ2r059R7vq6S6bx69+vOsQg5ZYPLK0fECfM91YdUDNOqnBsGA3gS+L5S+eilgb2yYwBrSdoiu39AveMfA/W/Rdb90nkU2LfeeMMK2fFl+WLby4FtyNjYL8olSL+03lPaIGnfes+tFRGPkzb4WZa0ic66ETE+Ii4glXNfP8vYWLXeZYHpwLRsDKHul/9EYBVJW2bvXURSU1c/TwM/zO7/iOxnl+UYERGDSHsirJE996Ps+Z6kRmNicz+QRvwL2Ae4SdI3smPP8sXPpf5+1P2B+uMB7SK7CtqFL/7c9d1D9ZbMt3rcMBgRMQr4I+mX5TPAkIh4MXt6InCUpAnA8kDdAO+1wIN1g89k30wjYgJpQPLxrKvl4uz5XwN3ShoB/K8tMRvJ/RHpKmE8afvH4fD5hkk3S3qR1M99Wda1clw26DuaNPj5dzWxYUlEjCH1s79E6uIZlh2fTfpFe352nlGk7prGMh4DHJy97kDg2Oz4hdkg8xjg6eyzrgS6Zcf+DAzMPqtVIuKV7LPuyK4KjgdOyDKsB3yUvbQfDRuG5q4EWzPb6SrSlqHPZoP8Z9R7bhtgi8bfZtXEZbetSZJ6APdFxEZlZymK0nan60TE78rO0hqSBgLfjIijW3jdkhHxaXZ/f9JVw/7AsIjYvPikLZM0LSK+1PIrrVJy9xtal9WpvzlExP1lZ2ijT4F+koZEw7UM89tM0u9IXXEfAD+NiFlA6Y2CpHWBu4ApZWexhnzFYGZmDXiMwczMGnDDYGZmDbhhMDOzBtwwmJlZA24YzMysATcMZmbWwP8H8Py5fWjuMIwAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f543d964a58>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "air_masses = np.linspace(1, 15, 15)\n",
    "eff_aero_wavelength = np.array([get_effective_aerosol_wavelength(\"low-frequency\", mass, 1.3, 0.6) for mass in air_masses])\n",
    "plt.plot(air_masses, eff_aero_wavelength)\n",
    "plt.xlabel(\"optical mass, aerosol [kg/m^2?]\")\n",
    "plt.ylabel(\"low freq. effective aerosol wavelength [um?]\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
